The increasing demand for high-speed wireless data and voice transmission requires system designers to achieve ever higher throughput in radio channels with limited bandwidth. Recently, there has been considerable interest in using multiple transmit and receive antennas, because of their ability to offer a high data rate over fading channels. Generally, the capacity of a MIMO channel increases linearly according to the minimum number of transmit and receive antennas without requiring increased bandwidth or transmitted power. The Bell-Lab layered space-time (BLAST) architecture is an example of current uncoded MIMO systems. Because of their high spectrum efficiency, MIMO techniques have been incorporated into several wireless standards, including the recently published IEEE 802.16 standard.
MIMO systems also permit spatial user multiplexing (also known as Space Division Multiple Access (SDMA)). In the uplink SDMA, multiple user signals are multiplexed in the uplink. For example, the IEEE 802.16e (Mobile Worldwide Interoperability for Microwave Access (WiMAX)) standard includes provisions for spatial user multiplexing. However, the standard does not specify the receiver structure. At this point, no method has been suggested for separating users multiplexed over multiple transmit antennas.
In decoding a MIMO channel, lattice decoding methods can be used for detection, since the received signal set has a regular structure. However, the complexity of the optimum lattice decoding grows exponentially with the number of transmit antennas, and with the constellation size. Several sub-optimum MIMO detectors have been proposed based on nulling and interference cancellation (IC), which essentially perform zero-forcing or minimum-mean-square-error equalization. The performance of these simple detection schemes is significantly inferior to that of a maximum likelihood (ML) detector. However, the complexity of ML detectors grow exponentially according to the number of transmit antennas.
Sphere decoding is a hard detection method that can be used in MIMO systems with near ML performance. In sphere decoding, the lattice points inside a hyper-sphere are checked and the closest lattice point is determined. It is known that even the average complexity of the sphere decoding algorithm is exponential.
The optimum capacity of coded MIMO systems is achieved by using an outer channel coder concatenated with a space-time mapper acting like an inner code. Iterative a posteriori probability (APP) detection techniques, such as iterative joint detection and decoding with soft inputs and outputs can be used for decoding of such systems. In contrast to a ML detector, which finds the closest valid point to the received noisy signal, an iterative soft-input soft-output MIMO detector provides probabilistic information about the transmitted bits. This soft information is passed to the decoder for the underlying error correction code (ECC), such as turbo or low-density parity check (LDPC) code. The soft outputs of the decoder can be used as new soft inputs for the MIMO detector, and hence this method can work in an iterative fashion to improve the performance of the receiver.
An optimum APP MIMO detector has a very large complexity, because it must enumerate all the signal points of the lattice for the soft metric computation. To reduce the complexity, several schemes have been proposed based on finding a small set, or list, of highly probable points for computing the soft values. List sphere decoding (LSD) is a method in this category, which uses a list of candidates inside a preset sphere for computing the soft information. The main drawback in the known LSD methods is the instability of the list size and the associated problem of the radius selection and reduction during the search. This significantly increases the complexity as compared to the original hard sphere decoding (HSD). This problem can be addressed by building a spherical list centered around the ML point, instead of the received point. However, although the effective list size is well controlled, the size must still be set at a large value to achieve a reasonable performance.
Soft-to-hard transformation is another approach for building a soft detector. The transformation converts a soft detection problem to a set of hard detection problems, which are less complex compared with LSD. This approach, however, imposes some limitations on the underlying modulation and coding schemes. Therefore, this approach can not be considered as a general solution for soft MIMO detection.
Using a stack algorithm with limited stack size is another method of implementing a list detector. Examples of such stack algorithms include list-sequential (LISS) detection, deterministic sequential Monte Carlo (SMC) detection, and iterative tree search (ITS) detection. Stack algorithms evaluate only the ‘good’ candidate vectors with the aid of a sequential tree searching scheme, based on the m-algorithm. The m-algorithm is a sub-optimum search that retains the best m paths at every instant. The disadvantage of this class of detectors is that the complexity is only a function of the stack size, determined by m, and is independent of the received signal-to-noise ratio (SNR) and channel condition.
It is, therefore, desirable to provide a MIMO receiver and decoding method with low complexity. It is also desirable to provide a MIMO receiver and detection method to separate multiple users multiplexed over multiple transmit antennas.